// pages/center/center.js

import request from '../../utils/request'

let startY = 0
Page({
  // 1.手指触摸屏幕开始
  startHandler(e){
    // 手指按下的时候,不要有过渡效果
    this.setData({
      convertTransition:''
    })
    // 获取手指初始按下的坐标值
    startY = e.touches[0].clientY
  },

  // 2.手指滑动时
  moveHandler(e){
    // 计算移动的距离
    let positionY = e.touches[0].clientY - startY
    // 当if的大括号中只有一行代码时,可以省略大括号,精简成以下写法
    if(positionY < 0) return positionY = 0
    if (positionY > 80) positionY = 80
    this.setData({
      convertTransform: `translateY(${positionY}rpx)`
    })
  },

  // 3.手指抬起时
  endHandler(e){
    this.setData({
      convertTransform:`translateY(0rpx)`,
      convertTransform:`transform 0.5s linear`
    })
  },

  // 4.转跳到login页面
  toLoginPage(){
    const userInfo = wx.getStorageSync('userInfo')
    if (userInfo) return // 阻止代码向下运行
    wx.navigateTo({
      url: '/pages/login/login',
    })
  },

  // 5.获取最近的播放记录
  async getRecentListData(){
    const {userId:uid}= this.data.userInfo
    const res = await request({
      url:'/user/record',
      data:{
        uid,
        type:1
      }
    })
    if(res.code === 200){
      this.setData({
        recentList:res.weekData.slice(0,10)
      })
    }
  } ,
  /**
   * 页面的初始数据
   */
  data: {
    positionY:0,
    convertTransform:'translateY(0rpx)',// 滑动时的属性值
    convertTransition:'',
    userInfo:{},
    recentList:[]
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    // 获取本地存储中的数据
    const userInfo = wx.getStorageSync('userInfo')
    if(userInfo){
      this.setData({
        userInfo:JSON.parse(userInfo)
      })
      // 登录成功后再去获取播放记录
      this.getRecentListData()
    }
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})